Various semiconductor, circuit, and integrated circuit (“IC”) devices, such as system-on-chip (“SoC”) devices, are emulated or verified during their design and development processes. As an example, highly-integrated SoC devices may power or support a wide variety of products to facilitate various hardware, software, and/or device applications. To meet these demands, SoC devices continue to increase in size and complexity, and their capabilities and manufacturability are in part aided by advance semiconductor processing technologies and availability of verified and well-developed libraries, e.g. design or circuit intellectual property (“IP”) libraries. The development of SoCs or other circuits or devices in some cases nevertheless may increase the burden on design verification processes, methods, or systems. In some cases, verification may consume a significant amount of time or resources during an SoC development cycle.
Circuit design verification approaches can vary. Given the expectation for speed, the various approaches of software development, hardware development, or system validation may provide varying levels of observability and control. Field programmable gate array (“FPGA”) prototype systems, for example, can provide improved system execution time due to its hardware-based implementation. Some FPGA verification systems, nevertheless, lack the ability to isolate some of the root causes of discoverable errors for various reasons. For example, the lack of visibility regarding the multitude of signals within the design. Depending on the environment, software, and hardware constraints, in some cases, deficiencies in certain FPGA vendor-specific verification tools may include access to a limited number of signals, and limited sample capture depth. Even combined with an external logic analyzer, FPGA vendor-specific verification tools, in some instances, may lack sufficient capabilities to isolate root cause errors during design verification.
Verification systems may also support co-simulation and co-emulation using the FPGA devices. However, the FPGA device and devices are generally part of a closed vendor proprietary system, and such vendor-specific verification tools typically only work with their own FPGA device types and typically cannot be customized to other FPGA type devices. Therefore, users can not use or design their own FPGA-based prototyping systems.
System-on-chip (SoC) design verification requires both software and hardware to work together on a prototype board. A custom-built prototype board having integrated software and hardware provides a simple way to verify a design but due its lack of controllability and observability, it has a limited capability in isolating root causes of design defects.